Ext.namespace('admin.main');

admin.main.ChanagePassword = function(config) {
	Ext.apply(this, config);
	this.userInfo = config.userInfo;
	/** 操作类型 */
	this.initUIComponents();
	admin.main.ChanagePassword.superclass.constructor.call(this);
};
Ext.extend(admin.main.ChanagePassword, Ext.Window, {
	initUIComponents : function() {
		this.form = new Ext.form.FormPanel({
			layout : 'column',
			height : 200,
			labelWidth : 100,
			labelAlign : 'right',
			autoScroll : false,
			border : false,
			frame : false,
			items : [ {
				columnWidth : 1,
				height : 10,
				border : false
			}, {
				columnWidth : 1,
				layout : 'form',
				border : false
			}, {
				columnWidth : 1,
				layout : 'form',
				border : false,
				items : [ {
					fieldLabel : '旧密码',
					xtype : 'textfield',
					inputType:'password',
					allowBlank : false,
					minLength : 6,
					minLengthText : '密码不能小于6位',
					maxLength : 16,
					maxLengthText : '密码不能超过16位',
					name : 'oldPassword',
					id : 'oldPassword'
				} ]
			},{
				columnWidth : 1,
				layout : 'form',
				border : false,
				items : [{
					fieldLabel : '新密码',
					xtype : 'textfield',
					minLength : 6,
					minLengthText : '密码不能小于6位',
					maxLength : 16,
					maxLengthText : '密码不能超过16位',
					allowBlank : false,
					inputType:'password',
					name : 'USER_PASSWORD',
					id : 'USER_PASSWORD'
				}]
			},{
				columnWidth : 1,
				layout : 'form',
				border : false,
				items : [{
					fieldLabel : '确认密码',
					xtype : 'textfield',
					minLength : 6,
					minLengthText : '密码不能小于6位',
					maxLength : 16,
					maxLengthText : '密码不能超过16位',
					inputType:'password',
					allowBlank : false,
					name : 'confirmPassword',
					id : 'confirmPassword'
				}]
			}],
			tbar : [ {
				text : '保存',
				iconCls:'save',
				handler:this.onSave.createDelegate(this)
			}, {
				text : '关闭',
				iconCls:'close',
				handler:this.onCancel.createDelegate(this)
			} ]
		});

		Ext.apply(this, {
			id : 'changePassword',
			title : '修改密码',
			border : false,
			layout : 'fit',
			style:{
				marginRight: 'auto',
		        marginLeft: 'auto'
			},
			width : 290,
			height : 200,
			modal : true,
			items : [ this.form ],
			listeners:{
				'render' : this.initData.createDelegate(this)
			}
		});
	},
	initData : function() {},
	onSave:function(){
		var oldPassword = Ext.getCmp("oldPassword").getValue();
		var USER_PASSWORD = Ext.getCmp("USER_PASSWORD").getValue();
		var confirmPassword = Ext.getCmp("confirmPassword").getValue();
		
		if(oldPassword==""||oldPassword==null){
			Ext.Msg.alert("提示","旧密码不能为空!");
			return;
		}
		if(USER_PASSWORD==""||USER_PASSWORD==null){
			Ext.Msg.alert("提示","新密码不能为空!");
			return;
		}
		if(confirmPassword==""||confirmPassword==null){
			Ext.Msg.alert("提示","确认密码不能为空!");
			return;
		}
		if(confirmPassword!=USER_PASSWORD){
			Ext.Msg.alert("提示","密码和确认密码输入的不一样!");
			return;
		}
		if(oldPassword==USER_PASSWORD&&oldPassword==confirmPassword){
			Ext.Msg.alert("提示","原密码和新密码不能一样");
			return;
		}
		Ext.getBody().mask("正在保存,请稍候...");
		this.form.getForm().submit({
			method:'post',
			url:ExtJ.getActionPath('/p2puser/changePassword.do'),
			params:{
				oldPassword:oldPassword,
				USER_PASSWORD:USER_PASSWORD,
				confirmPassword:confirmPassword,
				gyh:this.userInfo.gyh
			},
			reset : false,
			success : function(option, action){
				var text = Ext.decode(action.response.responseText);
				var msg = text.msg;
				if(msg!=""||msg!=null){
					Ext.getBody().unmask(true);
					alert(msg);
					if(msg=='修改密码成功！'){
						window.location.href = baseUrl + "/j_spring_security_logout";
					}
					return;
				}
				Ext.getBody().unmask(true);
				this.store.reload();
				parent.Ext.getCmp("mainMenu").getRootNode().reload();
			}.createDelegate(this)
		});
	},
	onCancel : function(){
		this.close();
	}
});